home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-10-08 | 4.6 KB | 113 lines | [TEXT/MPS ] |
- /*
- * A sample color picker.
- *
- * Written by: Shannon Holland
- * March 2, 1992
- *
- */
-
-
- // this structure defines our private storage block for our "globals"
-
- typedef struct PickerStorage
- {
- ComponentInstance myself;
- GrafPtr port;
- PMColor color;
- PMColor origColor;
- long flags;
- Boolean visible;
- Boolean realPicker;
- RGBColor lastRGB;
- NumFormatString nFormat;
- NumberParts nParts;
- short baseItem;
- Boolean active;
- PixPatHandle newColorPat;
- PixPatHandle origColorPat;
- CMProfileHandle profile;
- } PickerStorage, *PickerStoragePtr, **PickerStorageHndl;
-
- // dialog id's
-
- #define iOrigColor 1
- #define iNewColor 2
- #define iRedText 3
- #define iGreenText 4
- #define iBlueText 5
- #define iPrompt 6
- #define iLastItem 6
-
- // key id's
- #define kUpArrow 0x1E
- #define kDnArrow 0x1F
- #define kLtArrow 0x1C
- #define kRtArrow 0x1D
- #define kReturn 0xD
- #define kEnter 0x3
- #define kTab 0x9
- #define kBackSpace 0x8
-
- // other resource id's
- #define kPercFormatString 4258
-
- #define kPickerDITL 4670
-
- #define kPickerDataType 'pdat'
- #define kPickerData 4660
-
- // component manager routines
- pascal ComponentResult ExampleMain(ComponentParameters *params, Handle storage);
- pascal ComponentResult ExampleOpen(PickerStorageHndl storage, ComponentInstance self);
- pascal ComponentResult ExampleClose(PickerStorageHndl storage, ComponentInstance self);
- pascal ComponentResult ExampleCanDo(PickerStorageHndl storage, short selector);
- pascal ComponentResult ExampleVersion(PickerStorageHndl storage);
- pascal ComponentResult ExampleRegister(PickerStorageHndl storage);
- pascal ComponentResult ExampleSetTarget(PickerStorageHndl storage, ComponentInstance topOfCallChain);
-
- // color picker routines
- pascal ComponentResult ExampleInitPicker(PickerStorageHndl storage,PickerInitData *data);
- pascal ComponentResult ExampleGetDialog(PickerStorageHndl storage);
- pascal long ExampleTestGraphicsWorld(PickerStorageHndl storage,PickerInitData *data);
- pascal ComponentResult ExampleGetAttributes(PickerStorageHndl storage);
- pascal ComponentResult ExampleGetColor(PickerStorageHndl storage,ColorType whichColor,PMColorPtr color);
- pascal ComponentResult ExampleSetColor(PickerStorageHndl storage,ColorType whichColor,PMColorPtr color);
- pascal ComponentResult ExampleDoEvent(PickerStorageHndl storage,EventData *data);
- pascal ComponentResult ExampleDoEdit(PickerStorageHndl storage,EditData *data);
- pascal ComponentResult ExampleSetVisibility(PickerStorageHndl storage,Boolean visible);
- pascal ComponentResult ExampleDisplayPicker(PickerStorageHndl storage);
- pascal long ExampleItemHit(PickerStorageHndl storage,ItemHitData *data);
- pascal long ExampleGetItemList(PickerStorageHndl storage);
- pascal long ExampleSetBaseItem(PickerStorageHndl storage,short baseItem);
- pascal long ExampleGetProfile(PickerStorageHndl storage);
- pascal long ExampleSetProfile(PickerStorageHndl storage,CMProfileHandle profile);
- pascal long ExampleGetPrompt(PickerStorageHndl storage,Str255 prompt);
- pascal long ExampleSetPrompt(PickerStorageHndl storage,Str255 prompt);
- pascal long ExampleGetIconData(PickerStorageHndl storage,PickerIconData *data);
- pascal long ExampleGetEditMenuState(PickerStorageHndl storage,MenuState *mState);
- pascal long ExampleSetOrigin(PickerStorageHndl storage,Point where);
- pascal long ExampleExtractHelpItem(PickerStorageHndl storage,short itemNo,short whichState,HelpItemInfo *helpInfo);
-
- // private routines
- OSErr DoMouseDown(PickerStorageHndl storage,EventData *data);
- OSErr DoKeyDown(PickerStorageHndl storage,EventData *data);
- OSErr DoKeyUp(PickerStorageHndl storage,EventData *data);
- OSErr DoIdle(PickerStorageHndl storage,EventData *data);
- void ActivatePicker(PickerStorageHndl storage);
- void DeactivatePicker(PickerStorageHndl storage);
- OSErr DoListClick(PickerStorageHndl storage,ItemHitData *data);
- void DrawColorList(PickerStorageHndl storage);
- void DrawColorEditor(PickerStorageHndl storage,Boolean scrnInvalid);
- void SetSelectionColor(PickerStorageHndl storage);
- void DrawColorRects(PickerStorageHndl storage,Boolean drawOrig);
- void UpdateColorText(PickerStorageHndl storage);
- Boolean PtInItem(PickerStorageHndl storage, Point where, short itemNo);
- void GetItemRect(PickerStorageHndl storage,short itemNo,Rect *r);
- void SetItemRect(PickerStorageHndl storage,short itemNo,Rect *r);
- void OffsetItemRect(PickerStorageHndl storage,short itemNo,short h,short v);
- void InitNumerics(PickerStorageHndl storage);
- void NumToPercentage(PickerStorageHndl storage,long value,char *theString);
- Boolean PercentageToNum(PickerStorageHndl storage,char *theString,long *theNum);
- Handle GetItemHandle(PickerStorageHndl storage,short theItem);
- void CheckCurrentWorld(PickerStorageHndl storage,short itemNo);
-